// api/leaveManage.js
import axios from 'axios'

// 创建axios实例
const service = axios.create({
  baseURL: "http://localhost:8080/", // 实际项目中替换为你的API基础路径
  timeout: 5000
})

/**
 * 获取未审批的请假记录
 * @returns {Promise}
 */
export const getUnapprovedLeaveRecords = () => {
  return service({
    url: '/admins/list',
    method: 'get',
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded'
    }
  }).then(response => {
    if (response.data && response.data.code === 200) {
      return response.data
    } else {
      console.error('获取未审批请假记录失败:', response.data?.message || '未知错误')
      return Promise.reject(response.data || new Error('获取未审批请假记录失败'))
    }
  }).catch(error => {
    console.error('请求未审批请假记录接口出错:', error)
    return Promise.reject(error)
  })
}

/**
 * 更新请假状态（审批）
 * @param {Object} params - 审批参数
 * @returns {Promise}
 */
export const updateLeaveStatus = (params) => {
  return service({
    url: '/admins/updateStatus',
    method: 'get', // 根据接口文档，使用GET方法
    params: params, // 参数作为query参数传递
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded'
    }
  }).then(response => {
    if (response.data && response.data.code === 200) {
      return response.data
    } else {
      console.error('更新请假状态失败:', response.data?.message || '未知错误')
      return Promise.reject(response.data || new Error('更新请假状态失败'))
    }
  }).catch(error => {
    console.error('更新请假状态接口请求出错:', error)
    return Promise.reject(error)
  })
}
/**
 * 根据ID查询请假记录
 * @param {number} id - 请假记录ID
 * @returns {Promise}
 */
export const getLeaveRecordById = (id) => {
  return service({
    url: '/admins/getById',
    method: 'get',
    params: {
      id: id
    },
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded'
    }
  }).then(response => {
    if (response.data && response.data.code === 200) {
      return response.data
    } else {
      console.error('根据ID查询请假记录失败:', response.data?.message || '未知错误')
      return Promise.reject(response.data || new Error('根据ID查询请假记录失败'))
    }
  }).catch(error => {
    console.error('请求根据ID查询请假记录接口出错:', error)
    return Promise.reject(error)
  })
}